// Location.cs
// Facebook/Framework/Service
// Copyright (c) 2007, Nikhil Kothari. All Rights Reserved.
//

using System;
using System.Collections;
using System.Diagnostics;

namespace Facebook.Service {

    /// <summary>
    /// Represents a Facebook location on the user's profile.
    /// </summary>
    public sealed class Location : FacebookEntity {

        internal Location(Hashtable locationState)
            : base(locationState) {
        }

        /// <summary>
        /// The city of the location.
        /// </summary>
        public string City {
            get {
                return GetState<string>("city") ?? String.Empty;
            }
        }

        /// <summary>
        /// The country of the location.
        /// </summary>
        public string Country {
            get {
                return GetState<string>("country") ?? String.Empty;
            }
        }

        /// <summary>
        /// The state of the location.
        /// </summary>
        public string State {
            get {
                return GetState<string>("state") ?? String.Empty;
            }
        }

        /// <summary>
        /// The zip code of the location.
        /// </summary>
        public string Zip {
            get {
                return GetState<string>("zip") ?? String.Empty;
            }
        }
    }
}
